/**
 * Copyright(c) 2010 Ceno Techonologies Co., Ltd.
 *
 * History:
 *   15-1-9 下午4:42 Created by lyyang
 */
package com.jade.bss.business.groupon.dianping.pdu;

import java.util.Date;
import java.util.List;
import java.util.Set;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.jade.bss.business.groupon.GrouponWrap;

/**
 * 大众点评团购券类
 *
 * @author <a href="mailto:lyyang@ceno.cn">lyyang</a>
 * @version 1.0 15-1-9 下午4:42
 */
public class Deal extends GrouponWrap
{
    @JsonProperty ("deal_id")
    private String id;

    private String title;

    private String description;

    private String city;

    @JsonProperty ("list_price")
    private double listPrice;

    @JsonProperty ("current_price")
    private double currentPrice;

    private Set<String> regions;

    private Set<String> categories;

    @JsonProperty ("restrictions")
    private Restriction restriction;

    @JsonProperty ("purchase_count")
    private long purchaseCount;

    @JsonProperty ("purchase_deadline")
    private Date purchaseDeadline;

    @JsonProperty ("publish_date")
    private Date publishDate;

    private long distance;

    @JsonProperty ("image_url")
    private String imageUrl;

    @JsonProperty ("s_image_url")
    private String sImageUrl;

    @JsonProperty ("more_image_urls")
    private Set<String> moreImageUrls;

    @JsonProperty ("more_s_image_urls")
    private Set<String> moreSmallImageUrls;

    @JsonProperty("is_popular ")
    private boolean isPopular;

    private String notice;

    @JsonProperty ("deal_url")
    private String dealUrl;

    @JsonProperty ("deal_h5_url")
    private String dealH5Url;

    @JsonProperty ("commission_ratio")
    private double commissionRatio;

    private List<Business> businesses;

    public String getId()
    {
        return id;
    }

    public void setId(String id)
    {
        this.id = id;
    }

    public String getTitle()
    {
        return title;
    }

    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getDescription()
    {
        return description;
    }

    public void setDescription(String description)
    {
        this.description = description;
    }

    public String getCity()
    {
        return city;
    }

    public void setCity(String city)
    {
        this.city = city;
    }

    public double getListPrice()
    {
        return listPrice;
    }

    public void setListPrice(double listPrice)
    {
        this.listPrice = listPrice;
    }

    public double getCurrentPrice()
    {
        return currentPrice;
    }

    public void setCurrentPrice(double currentPrice)
    {
        this.currentPrice = currentPrice;
    }

    public Set<String> getRegions()
    {
        return regions;
    }

    public void setRegions(Set<String> regions)
    {
        this.regions = regions;
    }

    public Set<String> getCategories()
    {
        return categories;
    }

    public void setCategories(Set<String> categories)
    {
        this.categories = categories;
    }

    public long getPurchaseCount()
    {
        return purchaseCount;
    }

    public void setPurchaseCount(long purchaseCount)
    {
        this.purchaseCount = purchaseCount;
    }

    public Date getPurchaseDeadline()
    {
        return purchaseDeadline;
    }

    public void setPurchaseDeadline(Date purchaseDeadline)
    {
        this.purchaseDeadline = purchaseDeadline;
    }

    public Date getPublishDate()
    {
        return publishDate;
    }

    public void setPublishDate(Date publishDate)
    {
        this.publishDate = publishDate;
    }

    public long getDistance()
    {
        return distance;
    }

    public void setDistance(long distance)
    {
        this.distance = distance;
    }

    public String getImageUrl()
    {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl)
    {
        this.imageUrl = imageUrl;
    }

    public String getsImageUrl()
    {
        return sImageUrl;
    }

    public void setsImageUrl(String sImageUrl)
    {
        this.sImageUrl = sImageUrl;
    }

    public String getDealUrl()
    {
        return dealUrl;
    }

    public void setDealUrl(String dealUrl)
    {
        this.dealUrl = dealUrl;
    }

    public String getDealH5Url()
    {
        return dealH5Url;
    }

    public void setDealH5Url(String dealH5Url)
    {
        this.dealH5Url = dealH5Url;
    }

    public double getCommissionRatio()
    {
        return commissionRatio;
    }

    public void setCommissionRatio(double commissionRatio)
    {
        this.commissionRatio = commissionRatio;
    }

    public List<Business> getBusinesses()
    {
        return businesses;
    }

    public void setBusinesses(List<Business> businesses)
    {
        this.businesses = businesses;
    }


    public Set<String> getMoreImageUrls()
    {
        return moreImageUrls;
    }

    public void setMoreImageUrls(Set<String> moreImageUrls)
    {
        this.moreImageUrls = moreImageUrls;
    }

    public Set<String> getMoreSmallImageUrls()
    {
        return moreSmallImageUrls;
    }

    public void setMoreSmallImageUrls(Set<String> moreSmallImageUrls)
    {
        this.moreSmallImageUrls = moreSmallImageUrls;
    }

    public boolean isPopular()
    {
        return isPopular;
    }

    public void setPopular(boolean popular)
    {
        isPopular = popular;
    }

    public String getNotice()
    {
        return notice;
    }

    public void setNotice(String notice)
    {
        this.notice = notice;
    }

    public Restriction getRestriction()
    {
        return restriction;
    }

    public void setRestriction(Restriction restriction)
    {
        this.restriction = restriction;
    }
}
